## libraries
library(colorout)
library(here)
library(data.table)
source(here("src", "stroop-rsa-pc.R"))
#render_report("optim_analysis", src_dir = "group_analyses/optim_2021-11-15", params = list(subjlist = "ispc_retest"))
#render_report("optim_analysis", src_dir = "group_analyses/optim_2021-11-15", params = list(subjlist = "all_retest"))
library(knitr)
library(dplyr)
library(tidyr)
library(ggplot2)
library(ggridges)
library(abind)
library(httpgd)
## settings
hgd()
## httpgd server running at:
## http://127.0.0.1:58905/live?token=6SflLGrJ
opts_chunk$set(echo = TRUE)
theme_set(theme_bw(base_size = 10))
## constants
#subjlist <- "ispc_retest"
subjlist <- params$subjlist
if (subjlist == "ispc_retest") {
session <- "reactive"
} else if (subjlist == "all_retest") {
session <- "proactive"
}
prewhs <- c("none", "obsall")
glms <- c("lsall_1rpm", "lssep_1rpm")
roiset <- "Schaefer2018Dev"
measures <- c("cveuc", "crcor")
subjects <- fread(here("out", paste0("subjlist_", subjlist, ".txt")))[[1]]
atlas <- read_atlas(roiset)
## read subject RDMs:
rdm <- enlist(combo_paste(measures, prewhs, sep = "__"))
for (prewh in prewhs) {
for (measure in measures) {
rdm[[paste0(measure, "__", prewh)]] <- read_rdms(
.measure = measure, .prewh = prewh,
.glmname = "lsall_1rpm", .roiset = roiset, .waves = waves,
.session = session, .subjects = subjects,
.ttypes1 = intersect(ttypes_by_run[[session]]$run1, ttypes[["bias"]]),
.ttypes2 = intersect(ttypes_by_run[[session]]$run2, ttypes[["bias"]]),
.rois = names(atlas$rois)
)
}
}
## read regression weights:
dat <- enlist(combo_paste(measures, glms, sep = "__"))
for (measure in measures) {
for (glmname in glms) {
for (prewh in prewhs) {
if (prewh == "obsall" && glmname == "lssep_1rpm") next
file_name <-
construct_filename_weights(
measure = measure, subjlist = subjlist, glmname = glmname, roiset = roiset, prewh = prewh
)
dat[[paste0(measure, "__", glmname, "__", prewh)]] <- fread(file_name)
}
}
}
dat <- rbindlist(dat, idcol = "id")
dat <- separate(dat, id, c("measure", "glmname", "prewh"), sep = "__")
## calculate
## for group stats:
dat_sum <- dat %>%
group_by(prewh, measure, glmname, term, roi, subject) %>% ## average over waves
summarize(b = mean(b), .groups = "drop_last") %>%
summarize(
t_stat = t.test(b)$statistic,
p = t.test(b, alternative = "greater")$p.value,
.groups = "keep"
)
## for test-retest correlations:
dat_r <- dat %>%
pivot_wider(names_from = "wave", values_from = "b") %>% ## spread over waves
group_by(prewh, measure, glmname, term, roi) %>% ## correlate over subjects
summarize(r = cor(wave1, wave2))
## `summarise()` has grouped output by 'prewh', 'measure', 'glmname', 'term'. You can override using the `.groups` argument.
all_retest
cross-run correlation
for (mod in models$crcor) {
rdm_models <-
read_model_rdm(
model = mod, measure_type = "similarity", session = session, ttype_subset = "bias"
)
p <- rdm_models %>% melt_mat %>% plot_melted_mat + labs(title = mod) + theme(axis.text.x = element_text(angle = 90, hjust = 0))
print(p)
}




RDMs
rdm_crcor_none <- rdm$crcor__none[, , c("Vis", "SomMot", "core32", "LH_Cont_PFCl_6", "LH_Cont_Par_6"), , ]
apply(atanh(rdm_crcor_none), c("dim1", "dim2", "roi", "wave"), mean) %>%
tanh %>%
melt_mat %>%
plot_melted_mat(.row = "dim1", .col = "dim2", add_greyscale_gradient = FALSE) +
scale_fill_viridis_c() +
facet_grid(vars(wave), vars(roi), scales = "free") +
theme(axis.text.x = element_text(angle = 90, hjust = 0), legend.position = "top") +
labs(title = "group mean matrices: non-prewhitened")

rdm_crcor_none[, , , 1, ] %>%
melt_mat %>%
plot_melted_mat(.row = "dim1", .col = "dim2", add_greyscale_gradient = FALSE) +
scale_fill_viridis_c() +
facet_grid(vars(wave), vars(roi), scales = "free") +
theme(axis.text.x = element_text(angle = 90, hjust = 0), legend.position = "top") +
labs(title = "single-subject matrices: non-prewhitened")

rdm_crcor_obsall <- rdm$crcor__obsall[, , c("Vis", "SomMot", "core32", "LH_Cont_PFCl_6", "LH_Cont_Par_6"), , ]
apply(atanh(rdm_crcor_obsall), c("dim1", "dim2", "roi", "wave"), mean) %>%
tanh %>%
melt_mat %>%
plot_melted_mat(.row = "dim1", .col = "dim2", add_greyscale_gradient = FALSE) +
scale_fill_viridis_c() +
facet_grid(vars(wave), vars(roi), scales = "free") +
theme(axis.text.x = element_text(angle = 90, hjust = 0), legend.position = "top") +
labs(title = "group mean matrices: prewhitened")

rdm_crcor_obsall[, , , 1, ] %>%
melt_mat %>%
plot_melted_mat(.row = "dim1", .col = "dim2", add_greyscale_gradient = FALSE) +
scale_fill_viridis_c() +
facet_grid(vars(wave), vars(roi), scales = "free") +
theme(axis.text.x = element_text(angle = 90, hjust = 0), legend.position = "top") +
labs(title = "single-subject matrices: prewhitened")

group stats
non-prewhitened
dat_sum %>%
filter(measure == "crcor", prewh == "none") %>%
ggplot(aes(roi, t_stat, fill = glmname)) +
geom_hline(yintercept = 0) +
stat_summary(fun = "mean", position = position_dodge(width = 0.5), geom = "col") +
facet_grid(cols = vars(term)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "group-level t stats")

dat %>%
filter(measure == "crcor", prewh == "none") %>%
ggplot(aes(roi, b, color = glmname)) +
geom_hline(yintercept = 0) +
stat_summary(fun.data = "mean_cl_boot", position = position_dodge(width = 0.5), geom = "errorbar") +
facet_grid(cols = vars(term), scales = "free") +
coord_flip() +
scale_color_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "group-level b coefficients")

dat_sum %>%
filter(measure == "crcor", prewh == "none") %>%
pivot_wider(id_cols = c("term", "roi"), names_from = "glmname", values_from = "t_stat") %>%
ggplot(aes(lsall_1rpm, lssep_1rpm)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(cols = vars(term)) +
labs(title = "group-level t stats")

prewhitened: lsall_1rpm
dat_sum %>%
filter(measure == "crcor", glmname == "lsall_1rpm") %>%
ggplot(aes(roi, t_stat, fill = prewh)) +
geom_hline(yintercept = 0) +
stat_summary(fun = "mean", position = position_dodge(width = 0.5), geom = "col") +
facet_grid(cols = vars(term)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "group-level t stats")

dat %>%
filter(measure == "crcor", glmname == "lsall_1rpm") %>%
ggplot(aes(roi, b, color = prewh)) +
geom_hline(yintercept = 0) +
stat_summary(fun.data = "mean_cl_boot", position = position_dodge(width = 0.5), geom = "errorbar") +
facet_grid(cols = vars(term), scales = "free") +
coord_flip() +
scale_color_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "group-level b coefficients")

dat_sum %>%
filter(measure == "crcor", glmname == "lsall_1rpm") %>%
pivot_wider(id_cols = c("term", "roi"), names_from = "prewh", values_from = "t_stat") %>%
ggplot(aes(none, obsall)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(cols = vars(term)) +
labs(title = "group-level t stats")

test-retest correlations
non-prewhitened
dat_r %>%
filter(measure == "crcor", prewh == "none") %>%
ggplot(aes(roi, r, fill = glmname)) +
geom_hline(yintercept = 0) +
stat_summary(fun = "mean", position = position_dodge(width = 0.5), geom = "col") +
facet_grid(cols = vars(term)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "test-retest correlations")

dat_r %>%
filter(measure == "crcor", prewh == "none") %>%
pivot_wider(id_cols = c("term", "roi"), names_from = "glmname", values_from = "r") %>%
ggplot(aes(lsall_1rpm, lssep_1rpm)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(cols = vars(term)) +
labs(title = "test-retest correlations")

prewhitened: lsall_1rpm
dat_r %>%
filter(measure == "crcor", glmname == "lsall_1rpm") %>%
ggplot(aes(roi, r, fill = prewh)) +
geom_hline(yintercept = 0) +
stat_summary(fun = "mean", position = position_dodge(width = 0.5), geom = "col") +
facet_grid(cols = vars(term)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "test-retest correlations")

dat_r %>%
filter(measure == "crcor", glmname == "lsall_1rpm") %>%
pivot_wider(id_cols = c("term", "roi"), names_from = "prewh", values_from = "r") %>%
ggplot(aes(none, obsall)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(cols = vars(term)) +
labs(title = "test-retest correlations")

table
non-prewhitened
dat_sum %>%
full_join(dat_r) %>%
filter(measure == "crcor", term %in% c("conjunction", "distractor", "incongruency", "target"), prewh == "none") %>%
pivot_wider(names_from = c("glmname"), values_from = c("t_stat", "p", "r")) %>%
filter(p_lsall_1rpm < 0.01 | p_lssep_1rpm < 0.01) %>%
arrange(-t_stat_lsall_1rpm) %>%
kable
## Joining, by = c("prewh", "measure", "glmname", "term", "roi")
| none |
crcor |
target |
SomMot |
6.036965 |
5.908287 |
0.0000007 |
0.0000010 |
-0.0692325 |
-0.1095208 |
| none |
crcor |
distractor |
Vis |
5.854255 |
4.040639 |
0.0000012 |
0.0001791 |
0.0955291 |
0.1808343 |
| none |
crcor |
incongruency |
core32 |
5.056794 |
3.232358 |
0.0000108 |
0.0015274 |
0.2739029 |
0.1343527 |
| none |
crcor |
incongruency |
LH_Cont_Par_6 |
5.048706 |
4.768844 |
0.0000111 |
0.0000241 |
0.3087965 |
0.0790452 |
| none |
crcor |
incongruency |
LH_Cont_Par_4 |
4.180174 |
4.081220 |
0.0001224 |
0.0001604 |
0.1563675 |
0.1924391 |
| none |
crcor |
incongruency |
Vis |
3.898284 |
2.683145 |
0.0002635 |
0.0059601 |
0.4612235 |
0.1363985 |
| none |
crcor |
incongruency |
SomMot |
3.561764 |
3.122884 |
0.0006477 |
0.0020188 |
0.1089093 |
0.1595941 |
| none |
crcor |
incongruency |
LH_Cont_PFCl_6 |
3.538587 |
1.431759 |
0.0006886 |
0.0814516 |
-0.0175133 |
0.0677992 |
| none |
crcor |
incongruency |
RH_Cont_PFCl_12 |
3.422061 |
2.169139 |
0.0009349 |
0.0192055 |
-0.1772072 |
-0.0840016 |
| none |
crcor |
incongruency |
RH_Cont_Par_6 |
3.384942 |
1.658137 |
0.0010299 |
0.0540347 |
0.0894960 |
-0.1248471 |
| none |
crcor |
incongruency |
RH_Cont_PFCl_9 |
3.331295 |
2.471558 |
0.0011837 |
0.0097834 |
0.1403675 |
0.1232427 |
| none |
crcor |
incongruency |
RH_Cont_PFCl_14 |
3.300100 |
1.345269 |
0.0012831 |
0.0944821 |
0.0876670 |
0.0518206 |
| none |
crcor |
target |
RH_Cont_PFCl_14 |
3.245631 |
1.956604 |
0.0014762 |
0.0300424 |
-0.1872049 |
0.4136216 |
| none |
crcor |
distractor |
SomMot |
3.216687 |
2.078356 |
0.0015899 |
0.0233162 |
-0.1519217 |
-0.0944269 |
| none |
crcor |
incongruency |
RH_Cont_PFCmp_2 |
3.155265 |
1.965575 |
0.0018596 |
0.0294944 |
-0.1478682 |
0.1127163 |
| none |
crcor |
incongruency |
LH_Cont_Par_1 |
2.719606 |
1.952963 |
0.0054625 |
0.0302673 |
0.1814894 |
0.1319579 |
| none |
crcor |
incongruency |
LH_Cont_PFCmp_1 |
2.640062 |
2.707613 |
0.0066026 |
0.0056217 |
0.3228169 |
0.3442514 |
| none |
crcor |
incongruency |
RH_Cont_PFCv_1 |
2.602599 |
2.442684 |
0.0072130 |
0.0104528 |
0.0355817 |
0.1240820 |
| none |
crcor |
target |
core32 |
2.506627 |
1.549322 |
0.0090234 |
0.0660749 |
0.0363741 |
-0.1075845 |
| none |
crcor |
target |
RH_SalVentAttn_TempOccPar_7 |
1.706360 |
2.541060 |
0.0493149 |
0.0083304 |
-0.1185983 |
-0.4011169 |
| none |
crcor |
incongruency |
RH_Cont_Par_4 |
1.547407 |
2.693777 |
0.0663049 |
0.0058108 |
-0.0021916 |
0.0951452 |
| none |
crcor |
target |
LH_Cont_Par_5 |
1.408167 |
3.182853 |
0.0848562 |
0.0017334 |
-0.0939326 |
-0.1547981 |
prewhitened
dat_sum %>%
full_join(dat_r) %>%
filter(measure == "crcor", term %in% c("conjunction", "distractor", "incongruency", "target"), prewh == "obsall") %>%
filter(p < 0.01) %>%
arrange(-t_stat) %>%
kable
## Joining, by = c("prewh", "measure", "glmname", "term", "roi")
| obsall |
crcor |
lsall_1rpm |
target |
SomMot |
13.435313 |
0.0000000 |
-0.1307399 |
| obsall |
crcor |
lsall_1rpm |
distractor |
Vis |
11.086140 |
0.0000000 |
0.5171092 |
| obsall |
crcor |
lsall_1rpm |
target |
Vis |
9.514942 |
0.0000000 |
-0.2006751 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
LH_Cont_Par_4 |
4.238609 |
0.0001043 |
0.3495953 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
LH_Cont_Par_6 |
4.104229 |
0.0001506 |
-0.0819877 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
core32 |
3.942262 |
0.0002339 |
0.2108016 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
Vis |
3.638746 |
0.0005282 |
0.1502920 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
SomMot |
3.511743 |
0.0007390 |
0.2039571 |
| obsall |
crcor |
lsall_1rpm |
target |
core32 |
3.381300 |
0.0010397 |
-0.1315888 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
LH_Cont_PFCl_7 |
3.345319 |
0.0011415 |
-0.0778200 |
| obsall |
crcor |
lsall_1rpm |
target |
LH_Cont_Par_4 |
3.285087 |
0.0013338 |
-0.3033117 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
LH_Default_Par_7 |
3.103258 |
0.0021216 |
-0.1740947 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
RH_Cont_PFCv_1 |
3.037992 |
0.0025003 |
-0.0059184 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
RH_Cont_PFCl_9 |
3.003695 |
0.0027244 |
0.2892933 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
LH_Default_PFC_17 |
2.979630 |
0.0028928 |
-0.0040970 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
RH_Cont_Par_3 |
2.830532 |
0.0041771 |
-0.3734273 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
RH_Cont_PFCmp_2 |
2.729695 |
0.0053318 |
0.0499868 |
| obsall |
crcor |
lsall_1rpm |
target |
LH_Cont_Par_6 |
2.648696 |
0.0064689 |
0.1505068 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
LH_Default_PFC_21 |
2.623932 |
0.0068593 |
0.2462755 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
LH_Cont_PFCl_3 |
2.558962 |
0.0079899 |
0.3134959 |
| obsall |
crcor |
lsall_1rpm |
incongruency |
LH_Cont_PFCmp_1 |
2.530552 |
0.0085365 |
0.1235462 |
All significant ROIs at \(\alpha < 0.01\) uncorrected. Sorted by t_stat_lsall_1rpm. r_* columns show test–retest correlations.
cross-validated euclidean
for (mod in models$cveuc) {
rdm_models <-
read_model_rdm(
model = mod, measure_type = "cvdistance", session = session, ttype_subset = "bias"
)
p <- rdm_models %>% melt_mat %>% plot_melted_mat + labs(title = mod) + theme(axis.text.x = element_text(angle = 90, hjust = 0))
print(p)
}



RDMs
rdm_cveuc_none <- rdm$cveuc__none[, , c("Vis", "SomMot", "core32", "LH_Cont_PFCl_6", "LH_Cont_Par_6"), , ]
sds <- apply(rdm_cveuc_none, c("roi", "subject", "wave"), function(x) sd(vec(x)))
rdm_cveuc_none <- sweep(rdm_cveuc_none, 3:5, sds, "/")
apply(rdm_cveuc_none, c("dim1", "dim2", "roi", "wave"), mean) %>%
melt_mat %>%
plot_melted_mat(.row = "dim1", .col = "dim2", add_greyscale_gradient = FALSE) +
scale_fill_viridis_c() +
facet_grid(vars(wave), vars(roi), scales = "free") +
theme(axis.text.x = element_text(angle = 90, hjust = 0), legend.position = "top") +
labs(title = "group mean matrices: non-prewhitened")

rdm_cveuc_none[, , , 1, ] %>%
melt_mat %>%
plot_melted_mat(.row = "dim1", .col = "dim2", add_greyscale_gradient = FALSE) +
scale_fill_viridis_c() +
facet_grid(vars(wave), vars(roi), scales = "free") +
theme(axis.text.x = element_text(angle = 90, hjust = 0), legend.position = "top") +
labs(title = "single-subject matrices: non-prewhitened")

rdm_cveuc_obsall <- rdm$cveuc__obsall[, , c("Vis", "SomMot", "core32", "LH_Cont_PFCl_6", "LH_Cont_Par_6"), , ]
sds <- apply(rdm_cveuc_obsall, c("roi", "subject", "wave"), function(x) sd(vec(x)))
rdm_cveuc_obsall <- sweep(rdm_cveuc_obsall, 3:5, sds, "/")
apply(rdm_cveuc_obsall, c("dim1", "dim2", "roi", "wave"), mean) %>%
melt_mat %>%
plot_melted_mat(.row = "dim1", .col = "dim2", add_greyscale_gradient = FALSE) +
scale_fill_viridis_c() +
facet_grid(vars(wave), vars(roi), scales = "free") +
theme(axis.text.x = element_text(angle = 90, hjust = 0), legend.position = "top") +
labs(title = "group mean matrices: prewhitened")

rdm_cveuc_obsall[, , , 1, ] %>%
melt_mat %>%
plot_melted_mat(.row = "dim1", .col = "dim2", add_greyscale_gradient = FALSE) +
scale_fill_viridis_c() +
facet_grid(vars(wave), vars(roi), scales = "free") +
theme(axis.text.x = element_text(angle = 90, hjust = 0), legend.position = "top") +
labs(title = "single-subject matrices: prewhitened")

group stats
non-prewhitened
dat_sum %>%
filter(measure == "cveuc", prewh == "none") %>%
ggplot(aes(roi, t_stat, fill = glmname)) +
geom_hline(yintercept = 0) +
stat_summary(fun = "mean", position = position_dodge(width = 0.5), geom = "col") +
facet_grid(cols = vars(term)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "group-level t stats")

dat %>%
filter(measure == "cveuc", prewh == "none") %>%
ggplot(aes(roi, b, color = glmname)) +
geom_hline(yintercept = 0) +
stat_summary(fun.data = "mean_cl_boot", position = position_dodge(width = 0.5), geom = "errorbar") +
facet_grid(cols = vars(term), scales = "free") +
coord_flip() +
scale_color_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "group-level b coefficients")

dat_sum %>%
filter(measure == "cveuc", prewh == "none") %>%
pivot_wider(id_cols = c("term", "roi"), names_from = "glmname", values_from = "t_stat") %>%
ggplot(aes(lsall_1rpm, lssep_1rpm)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(cols = vars(term)) +
labs(title = "group-level t stats")

prewhitened: lsall_1rpm
dat_sum %>%
filter(measure == "cveuc", glmname == "lsall_1rpm") %>%
ggplot(aes(roi, t_stat, fill = prewh)) +
geom_hline(yintercept = 0) +
stat_summary(fun = "mean", position = position_dodge(width = 0.5), geom = "col") +
facet_grid(cols = vars(term)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "group-level t stats")

dat %>%
filter(measure == "cveuc", glmname == "lsall_1rpm") %>%
ggplot(aes(roi, b, color = prewh)) +
geom_hline(yintercept = 0) +
stat_summary(fun.data = "mean_cl_boot", position = position_dodge(width = 0.5), geom = "errorbar") +
facet_grid(cols = vars(term), scales = "free") +
coord_flip() +
scale_color_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "group-level b coefficients")

dat_sum %>%
filter(measure == "cveuc", glmname == "lsall_1rpm") %>%
pivot_wider(id_cols = c("term", "roi"), names_from = "prewh", values_from = "t_stat") %>%
ggplot(aes(none, obsall)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(cols = vars(term)) +
labs(title = "group-level t stats")

test-retest correlations
non-prewhitened
dat_r %>%
filter(measure == "cveuc", prewh == "none") %>%
ggplot(aes(roi, r, fill = glmname)) +
geom_hline(yintercept = 0) +
stat_summary(fun = "mean", position = position_dodge(width = 0.5), geom = "col") +
facet_grid(cols = vars(term)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "test-retest correlations")

dat_r %>%
filter(measure == "cveuc", prewh == "none") %>%
pivot_wider(id_cols = c("term", "roi"), names_from = "glmname", values_from = "r") %>%
ggplot(aes(lsall_1rpm, lssep_1rpm)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(cols = vars(term)) +
labs(title = "test-retest correlations")

prewhitened: lsall_1rpm
dat_r %>%
filter(measure == "cveuc", glmname == "lsall_1rpm") %>%
ggplot(aes(roi, r, fill = prewh)) +
geom_hline(yintercept = 0) +
stat_summary(fun = "mean", position = position_dodge(width = 0.5), geom = "col") +
facet_grid(cols = vars(term)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = 2) +
theme(legend.position = "top") +
labs(title = "test-retest correlations")

dat_r %>%
filter(measure == "cveuc", glmname == "lsall_1rpm") %>%
pivot_wider(id_cols = c("term", "roi"), names_from = "prewh", values_from = "r") %>%
ggplot(aes(none, obsall)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(cols = vars(term)) +
labs(title = "test-retest correlations")

table
dat_sum %>%
full_join(dat_r) %>%
filter(measure == "cveuc", prewh == "none", term %in% c("target", "distractor", "incongruency")) %>%
pivot_wider(names_from = c("glmname"), values_from = c("t_stat", "p", "r")) %>%
filter(p_lsall_1rpm < 0.01 | p_lssep_1rpm < 0.01) %>%
arrange(-t_stat_lsall_1rpm) %>%
kable
## Joining, by = c("prewh", "measure", "glmname", "term", "roi")
| none |
cveuc |
distractor |
Vis |
5.096293 |
3.356673 |
0.0000097 |
0.0011084 |
-0.0716702 |
0.2357591 |
| none |
cveuc |
incongruency |
LH_Cont_PFCl_6 |
3.477796 |
1.083349 |
0.0008080 |
0.1437895 |
-0.4927242 |
-0.0715695 |
| none |
cveuc |
target |
RH_Cont_Par_3 |
2.836896 |
1.361400 |
0.0041127 |
0.0919360 |
0.0193541 |
0.3095593 |
| none |
cveuc |
target |
RH_Cont_PFCl_14 |
2.557936 |
2.632462 |
0.0080090 |
0.0067224 |
0.1051463 |
0.1044802 |
| none |
cveuc |
distractor |
RH_Cont_Par_5 |
1.846091 |
2.470704 |
0.0375548 |
0.0098026 |
-0.2331548 |
0.0484790 |
| none |
cveuc |
target |
RH_SalVentAttn_TempOccPar_7 |
1.748702 |
2.664738 |
0.0454610 |
0.0062271 |
0.1283927 |
-0.0385871 |
| none |
cveuc |
target |
RH_Default_Par_4 |
1.421245 |
2.638739 |
0.0829552 |
0.0066233 |
0.0760200 |
-0.0582209 |
dat_sum %>%
full_join(dat_r) %>%
filter(measure == "cveuc", prewh == "obsall", term %in% c("target", "distractor", "incongruency")) %>%
filter(p < 0.01) %>%
arrange(-t_stat) %>%
kable
## Joining, by = c("prewh", "measure", "glmname", "term", "roi")
| obsall |
cveuc |
lsall_1rpm |
distractor |
Vis |
12.466757 |
0.0000000 |
0.5122660 |
| obsall |
cveuc |
lsall_1rpm |
target |
SomMot |
11.741408 |
0.0000000 |
0.0058902 |
| obsall |
cveuc |
lsall_1rpm |
target |
Vis |
9.218406 |
0.0000000 |
-0.2030414 |
| obsall |
cveuc |
lsall_1rpm |
incongruency |
SomMot |
3.961718 |
0.0002219 |
-0.1000386 |
| obsall |
cveuc |
lsall_1rpm |
target |
core32 |
3.080917 |
0.0022446 |
0.0060724 |
| obsall |
cveuc |
lsall_1rpm |
incongruency |
LH_Cont_PFCl_6 |
3.014850 |
0.0026495 |
0.2587848 |
| obsall |
cveuc |
lsall_1rpm |
incongruency |
core32 |
2.904066 |
0.0034881 |
-0.1025529 |
| obsall |
cveuc |
lsall_1rpm |
target |
LH_Cont_PFCl_6 |
2.625262 |
0.0068378 |
0.1245884 |
| obsall |
cveuc |
lsall_1rpm |
incongruency |
Vis |
2.573099 |
0.0077301 |
0.1591310 |
All significant ROIs at \(\alpha < 0.01\) uncorrected. Sorted by t_stat_lsall_1rpm. r_* columns show test–retest correlations.
comparison of measures: cross-validated euclidean and cross-run correlation, lsall_1rpm
non-prewhitened euclidean
dat_sum %>%
filter(term %in% c("distractor", "incongruency", "target"), prewh == "none", glmname == "lsall_1rpm") %>%
pivot_wider(id_cols = c("glmname", "term", "roi"), names_from = "measure", values_from = "t_stat") %>%
ggplot(aes(crcor, cveuc)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(rows = vars(glmname), cols = vars(term)) +
labs(title = "t statistics", x = "cross-run correlation", y = "cross-validated euclidean")

dat_r %>%
filter(term %in% c("distractor", "incongruency", "target"), prewh == "none", glmname == "lsall_1rpm") %>%
pivot_wider(id_cols = c("glmname", "term", "roi"), names_from = "measure", values_from = "r") %>%
ggplot(aes(crcor, cveuc)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(rows = vars(glmname), cols = vars(term)) +
labs(title = "test--retest correlations", x = "cross-run correlation", y = "cross-validated euclidean")

prewhitened euclidean
dat_sum %>%
filter(term %in% c("distractor", "incongruency", "target"), prewh == "obsall", glmname == "lsall_1rpm") %>%
pivot_wider(id_cols = c("glmname", "term", "roi"), names_from = "measure", values_from = "t_stat") %>%
ggplot(aes(crcor, cveuc)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(rows = vars(glmname), cols = vars(term)) +
labs(title = "t statistics", x = "cross-run correlation", y = "cross-validated euclidean")

dat_r %>%
filter(term %in% c("distractor", "incongruency", "target"), prewh == "obsall", glmname == "lsall_1rpm") %>%
pivot_wider(id_cols = c("glmname", "term", "roi"), names_from = "measure", values_from = "r") %>%
ggplot(aes(crcor, cveuc)) +
geom_hline(yintercept = 0) +
geom_vline(xintercept = 0) +
geom_abline() +
geom_point(size = 0.5) +
facet_grid(rows = vars(glmname), cols = vars(term)) +
labs(title = "test--retest correlations", x = "cross-run correlation", y = "cross-validated euclidean")
